<template>
  <div class="user-page">
    <h1>用户信息管理</h1>
    <!-- 动态传递props -->
    <UserInfo 
      :name="user.name" 
      :age="user.age" 
      :gender="user.gender" 
      :email="user.email" 
      :profession="user.profession"
    ></UserInfo>
    
    <button @click="updateUserInfo" class="update-btn">
      更新用户信息
    </button>
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue';
import UserInfo from '../components/UserInfo.vue';

// 定义响应式用户数据
const user = ref({
  name: '张三',
  age: 28,
  gender: 'male',
  email: 'zhangsan@example.com',
  profession: '工程师'
});

// 更新用户信息的事件处理函数
function updateUserInfo() {
  // 更新用户信息为新的值
  user.value = {
    name: '李四',
    age: 32,
    gender: 'female',
    email: 'lisi@example.com',
    profession: '设计师'
  };
}
</script>

<style scoped>
.user-page {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

.user-page h1 {
  color: #333;
  text-align: center;
  margin-bottom: 30px;
}

.update-btn {
  display: block;
  margin: 20px auto;
  padding: 10px 20px;
  background-color: #42b983;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  transition: background-color 0.3s;
}

.update-btn:hover {
  background-color: #359e75;
}
</style>
